/*
 * @Author: your name
 * @Date: 2021-09-14 18:53:01
 * @LastEditTime: 2022-01-29 11:45:29
 * @LastEditors: Please set LastEditors
 * @Description: In User Settings Edit
 * @FilePath: \jingfeng-web\src\router\index.js
 */
import Vue from 'vue'
import Router from 'vue-router'

// import store from '@/store/index'
// // 进度条
// import NProgress from 'nprogress'
import 'nprogress/nprogress.css'
// 路由数据
import routes from './routes'
// 路由数据

// fix vue-router NavigationDuplicated
const VueRouterPush = Router.prototype.push
Router.prototype.push = function push(location) {
    return VueRouterPush.call(this, location).catch(err => err)
}
const VueRouterReplace = Router.prototype.replace
Router.prototype.replace = function replace(location) {
    return VueRouterReplace.call(this, location).catch(err => err)
}

Vue.use(Router)
// 导出路由 在 main.js 里使用
const router = new Router({
    routes
})

/**
   * 路由拦截
   * 权限验证
   */
// router.beforeEach((to, from, next) => {
//     // 确认已经加载多标签页数据 https://github.com/d2-projects/d2-admin/issues/201
//     // await store.dispatch('jfAdmin/page/isLoaded')
//     // 进度条
//     NProgress.start()
//     // store.dispatch('permission/addButtonList', to)
//     // 验证当前路由所有的匹配中是否需要有登录验证的

//     // 这里暂时将cookie里是否存有token作为验证是否登录的条件
//     // 请根据自身业务需要修改
//     if (to.path === '/') {
//         router.push({
//             path: '/myWait'
//         })
//     }
//     const token = JSON.parse(sessionStorage.getItem('USERINFO'))
//     if (!token) {
//         if (to.path === '/login' || to.path === '/') {
//             if (store.state.situation.showState === false) {
//                 store.dispatch('situation/setToPath', '')
//             }
//             next()
//             NProgress.done()
//         } else {
//             // next({ path: '/login' })
//             window.parent.postMessage({
//                 type: 'reLogin'
//             }, '*')
//             next()
//             NProgress.done()
//         }
//     } else {
//         next()
//         NProgress.done()
//     }
// })

// router.afterEach(to => {
//     // 进度条
//     NProgress.done()
//     // 多页控制 打开新的页面
//     // store.dispatch('jfAdmin/page/open', to)
//     store.dispatch('permission/generateRoutes', ['admin'])
//     store.dispatch('permission/addButtonList', to)
//     // console.log(store.state.permission.routes[0].children)
//     // console.log(to)

//     // 更改标题
//     // util.title(to.meta.title)
// })

export default router
